[GHSA-6wpv-cj6x-v3jw] http vulnerable to Exposure of Sensitive Information to an Unauthorized Actor#7405
Conversation
|
Hi @tjuyuxinzhang, this is an interesting situation. I see version 0.6.4 mentioned as fixed in https://rubysec.com/advisories/CVE-2015-1828/ and https://github.com/rubysec/ruby-advisory-db/blob/master/gems/http/CVE-2015-1828.yml, but 0.6.4 isn't mentioned at all in the original vendor disclosure (https://groups.google.com/g/httprb/c/jkb4oxwZjkU) or in ruby/openssl#8. How did you determine that 0.6.4 contains a patch? |
Thanks for raising this — the reason I concluded that Specifically, the
The best supporting source for this is the published gem diff here: RubySec and the Ruby Advisory DB are consistent with that package-level evidence and list the patched version lines as:
References:
So to clarify the reasoning:
That is why I suggested the affected ranges should be modeled as:
rather than simply |
cfb7e0f
into
tjuyuxinzhang/advisory-improvement-7405
|
Hi @tjuyuxinzhang! Thank you so much for contributing to the GitHub Advisory Database. This database is free, open, and accessible to all, and it's people like you who make it great. Thanks for choosing to help others. We hope you send in more contributions in the future! |
Updates
Comments
The current advisory is incomplete and partly inaccurate in three ways.
Affected range is too broad/inaccurate
GitHub currently lists the affected versions as
< 0.7.3, but RubySec’s published advisory and the Ruby Advisory DB both document two patched version lines:>= 0.7.3~> 0.6.4This means versions in the
0.6.xline starting at0.6.4are already fixed and should not be included in the vulnerable range. The more accurate affected range is:< 0.6.4>= 0.7.0, < 0.7.3:contentReference[oaicite:6]{index=6}Patched versions are incomplete
GitHub currently lists only
0.7.3as patched, but RubySec also lists the patched maintenance line~> 0.6.4. That backported fix should be included. :contentReference[oaicite:7]{index=7}Title / weakness should reflect the actual root cause
The issue is described by the upstream disclosure and RubySec as an HTTPS MitM vulnerability caused by failure to call
OpenSSL::SSL::SSLSocket#post_connection_checkfor hostname verification. This is more precise than the current generic “Exposure of Sensitive Information to an Unauthorized Actor” wording. :contentReference[oaicite:8]{index=8}Supporting references: